home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Network Support Library
/
RoseWare - Network Support Library.iso
/
apidev
/
sap.arc
/
SAPA.ASM
< prev
next >
Wrap
Assembly Source File
|
1988-04-06
|
3KB
|
170 lines
;*****************************************************************************
;*
;* Program Name: SAP_ASSEMBLY
;*
;* Filename: sapa.asm
;*
;* Date Created: March 22, 1988
;*
;* Version: 1.0
;*
;* Programmers: Bryan Sparks
;*
;* Comments: Assembler routines for SAP Event Service Routines and
;* for IPX funtions.
;*
;*****************************************************************************
name SAP
DGroup GROUP _DATA
_DATA segment word public 'DATA'
assume ds:DGroup
_DATA ends
PGroup GROUP _TEXT
assume cs:PGroup
_TEXT segment byte public 'CODE'
public _SAPWaitESRHandler
public _SAPAdvertiseESRHandler
public _IPXGetInternetworkAddress
public _IPXSendPacket
public _IPXScheduleIPXEvent
public _IPXCancelEvent
public _IntSwap
extrn _SAPWaitESR: near
extrn _SAPAdvertiseESR: near
;
; This is the front-end procedure to the C function "SAPWaitESR"
;
_SAPWaitESRHandler proc far
mov ax, DGroup
mov ds, ax
push es
push si
call _SAPWaitESR
add sp, 4
ret
_SAPWaitESRHandler endp
;
; This is the front-end procedure to the C function "SAPAdvertiseESR"
;
_SAPAdvertiseESRHandler proc far
mov ax, DGroup
mov ds, ax
push es
push si
call _SAPAdvertiseESR
add sp, 4
ret
_SAPAdvertiseESRHandler endp
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;The following are a set of IPX routines used in the program.
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;Parameters:
; On Entry: 10 byte buffer
; On Exit: 10 byte buffer will contain address
_IPXGetInternetworkAddress proc near
push bp
mov bp,sp
mov ax, DGroup
mov es, ax
mov bx, [bp+4]
mov si, bx
mov bx, 09h
int 7Ah
push ds
pop es
pop bp
ret
_IPXGetInternetworkAddress endp
;Parameters
; On Entry: Pointer to ECB
_IPXSendPacket proc near
push bp
mov bp, sp
mov ax, DGroup
mov es, ax
mov bx, [bp+4]
mov si, bx
mov bx, 03h
int 7Ah
push ds
pop es
pop bp
ret
_IPXSendPacket endp
_IPXScheduleIPXEvent proc near
push bp
mov bp, sp
mov ax, DGroup
mov es, ax
mov bx, [bp+6]
mov si, bx
mov ax, [bp+4]
mov bx, 05h
int 7Ah
push ds
pop es
pop bp
ret
_IPXScheduleIPXEvent endp
;Parameters
; On Entry: Pointer to ECB
_IPXCancelEvent proc near
push bp
mov bp, sp
mov ax, DGroup
mov es, ax
mov bx, [bp+4]
mov si, bx
mov bx, 06h
int 7Ah
push ds
pop es
pop bp
ret
_IPXCancelEvent endp
;Parameters:
; On Entry: Parameter to swap
; On Exit: Returns swapped integer in AX
_IntSwap proc near
push bp
mov bp, sp
mov ax, [bp+4]
xchg ah, al
pop bp
ret
_IntSwap endp
_TEXT ends
END